import Vue from 'vue'
import Router from 'vue-router'
import axios from 'axios'
import { constantRouterMap } from '@/config/router.config'

// hack router push callback
const originalPush = Router.prototype.push
Router.prototype.push = function push (location, onResolve, onReject) {
  if (onResolve || onReject) return originalPush.call(this, location, onResolve, onReject)
  return originalPush.call(this, location).catch(err => err)
}

Vue.use(Router)

export default new Router({
  // mode: 'history',
  mode: 'hash',
  base: process.env.BASE_URL,
  scrollBehavior: () => ({ y: 0 }),
  routes: constantRouterMap
})

// export const router = new Router()
// router.beforeEach((to, from, next) => {
//   window._axiosPromiseArr.forEach((ele,index) => {
//     ele.cancel() 
//     // 路由跳转之前，清空（终止）上一个页面正在请求的内容
//     // 清空请求的参数 清空请求的参数
//     delete window._axiosPromiseArr[index]
//   })
// })
